package com.king.demo01;
/**
 * 代理模式的好处:
 * 1 可以使真是角色更加纯粹,不用关注公共业务
 * 2 公共也就交给了代理,实现了业务的分工
 * 3 公共业务发生扩展的时候,方便集中管理
 * 缺点:
 * 一个真实角色产生一个代理角色,代码量翻倍
 *
 *
 * 角色分析:
 * 抽象角色:一般使用接口或抽象类解决
 * 真实角色:被代理的角色
 * 代理角色:代理真实角色,代理后一般会有附属操作
 * 客户:访问代理角色的角色
 */
public class Client {
    public static void main(String[] args) {
        //出租房子
        Host host = new Host();
        //代理,代理会有附属操作
        Proxy proxy =new Proxy(host);
        //你不用面对房东,直接找中介即可
        proxy.rentHouse();


    }
}
